Source(s)
- get the original metadata from the video file
ffmpeg -i INPUT.mp4 -f ffmetadata ffmetadata.txt
;FFMETADATA1
major_brand=isom
minor_version=512
compatible_brands=isomiso2avc1mp41
encoder=Lavf60.16.100
- add chapters to the metadata file
- when using
TIMEBASE=1/1000
, theSTART
andEND
values have to be in milliseconds, i.e. a timestamp of 2:32:13 would translate to 9133000
- when using
Example
;FFMETADATA1 major_brand=isom minor_version=512 compatible_brands=isomiso2avc1mp41 encoder=Lavf60.16.100 [CHAPTER] TIMEBASE=1/1000 START=0 ; 00:39:39 END=2379000 title=Start [CHAPTER] TIMEBASE=1/1000 ; 00:39:39 START=2379001 ; 02:07:50 END=7670000 title=First Performance [CHAPTER] TIMEBASE=1/1000 ; 02:07:50 START=7670001 ; 02:32:13 END=9133000 title=Break [CHAPTER] TIMEBASE=1/1000 ; 02:32:13 START=9133001 ; 03:57:36 END=14246000 title=Second Performance
- write a new video file using the edited metadata file
ffmpeg -i INPUT.mp4 -i ffmetadata.txt -map_metadata 1 -codec copy OUTPUT.mp4